field_list flow {
    ipv4.srcip;
    ipv4.dstip;
    ipv4.proto;
}

// hash function for main_table_1 and fingerprint generation
field_list_calculation hash_1 {
    input {
        flow;
    }
    algorithm: crc_32;
    output_width: M1_IDX_WIDTH;
}

// hash function for main_table_2
field_list_calculation hash_2 {
    input {
        flow;
    }
    algorithm: crc_32c;
    output_width: M2_IDX_WIDTH;
}

// hash function for main_table_3
field_list_calculation hash_3 {
    input {
        flow;
    }
    algorithm: crc_32d;
    output_width: M3_IDX_WIDTH;
}

// hash function for ancillary table
field_list_calculation hash_4 {
    input {
        flow;
    }
    algorithm: crc_32q;
    output_width: M4_IDX_WIDTH;
}

/* field_list_calculation digest_hash { */
/*     input { */
/*         flow; */
/*     } */
/*     algorithm: crc_32_bzip2; */
/*     output_width: DIGEST_WIDTH; */
/* } */

// metadata for measurement program
